package com.example.lsrsbackend.model.view;

import com.example.lsrsbackend.model.Seat;
import lombok.Data;

import java.util.Date;

@Data
//座位视图对象
public class SeatVO {
    private Long id;
    private Long floorAreaId;
    private String seatNumber;
    private Seat.SeatType seatType;
    private Seat.BaseStatus baseStatus;
    private String status; // 实时状态：AVAILABLE, RESERVED, OCCUPIED
    private String currentUser;
    private Date updateTime;

    // 前端展示字段
    private Boolean available;
    private String statusText;
    private String statusColor;
    private String seatTypeText;
    private String baseStatusText;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getFloorAreaId() {
        return floorAreaId;
    }

    public void setFloorAreaId(Long floorAreaId) {
        this.floorAreaId = floorAreaId;
    }

    public String getSeatNumber() {
        return seatNumber;
    }

    public void setSeatNumber(String seatNumber) {
        this.seatNumber = seatNumber;
    }

    public Seat.SeatType getSeatType() {
        return seatType;
    }

    public void setSeatType(Seat.SeatType seatType) {
        this.seatType = seatType;
    }

    public Seat.BaseStatus getBaseStatus() {
        return baseStatus;
    }

    public void setBaseStatus(Seat.BaseStatus baseStatus) {
        this.baseStatus = baseStatus;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getCurrentUser() {
        return currentUser;
    }

    public void setCurrentUser(String currentUser) {
        this.currentUser = currentUser;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Boolean getAvailable() {
        return available;
    }

    public void setAvailable(Boolean available) {
        this.available = available;
    }

    public String getStatusText() {
        return statusText;
    }

    public void setStatusText(String statusText) {
        this.statusText = statusText;
    }

    public String getStatusColor() {
        return statusColor;
    }

    public void setStatusColor(String statusColor) {
        this.statusColor = statusColor;
    }

    public String getSeatTypeText() {
        return seatTypeText;
    }

    public void setSeatTypeText(String seatTypeText) {
        this.seatTypeText = seatTypeText;
    }

    public String getBaseStatusText() {
        return baseStatusText;
    }

    public void setBaseStatusText(String baseStatusText) {
        this.baseStatusText = baseStatusText;
    }
}
